#ifndef TXT_TERRAIN_FILE_LOADER_H
#define TXT_TERRAIN_FILE_LOADER_H

#include "TerrainFileManager.h"
#include <string>

namespace dataengine
{
	/** Loads a terrain point cloud from an text file */
	class TxtTerrainFileManager : public TerrainFileManager
	{
		public:
			/** Constructor 
				@param filename Name of the file to load 
				@param delimiters Chars that will separate elements in the file */
			TxtTerrainFileManager(const std::string &filename,const std::string &delimiters):TerrainFileManager(filename), m_delimiters(delimiters){}
			/** Destructor */
			virtual ~TxtTerrainFileManager() throw(){}
			/** Checks if the file can be loaded with this class */
			virtual bool canLoadFile() throw();
			/** Loads the terrain point cloud in the file */
            virtual geom::TerrainModel loadFile();

		private:
			std::string m_delimiters;
	};
}
#endif
